とある怪文書を入手したのですが、あまりにも眉に唾を付けなくなるような内容なので、公開するかどうかかなり悩みました。しかし、どのような判断にせよ、絶対に正しいことなどあり得ず、どんな人間でも常に間違いを犯す可能性があると考えて、判断は読者に委ねることにしました。
マイクロソフトが悪の帝国であることは、疑う余地はないだろう。
その悪行を上げてばきりがないのだが、1つだけ例を挙げるよう。素晴らしい理想に燃えるJavaという言語に自社の独占が侵されると見るや送り出してきた醜悪なC#という言語がある。C#とは、要するに、無い猿知恵を絞ってJavaの真似をしたが、肝心のセンスの良さが全て抜け落ちたものだが、それでもいくつかの重要な機能を模倣している。その1つが、メモリを管理するガベージコレクションという技術だ。
ガベージコレクションとは、メモリ管理をプログラマが行うのではなく、全て自動的に行うという画期的な技術で、これによってプログラマの負担は軽くなり、プログラムの信頼性も上がるという素晴らしいものだ。マイクロソフトの猿知恵では、このようなクールな機能を思い付くことはできなかったと見え、Javaが社会的に広く評価された後になって、慌ててこれを真似したというわけだ。
しかし、あるとき、ガベージコレクションという技術を盗む行為が、1978年の時点で行われているという驚くべき事態が起きていたことに気付いたのだ。
それは、たまたまガベージコレクションというキーワードでインターネットを検索していた時に見つけた掲示板が発端だった。
その掲示板は、N-BASICというプログラム言語のユーザーコミュニティだった。
そこには、こんな感じのメッセージが書き連ねられていた。
Q: 文字が消えます!
教えて下さい!
プログラムを編集している時に、時々、1文字消えてしまうことがあります。編集しているときは確かに画面上に見えるのに、listリターンとして見てみると、1文字だけ無くなっているのです。
A: 既知のバグです
スクリーンエディタで、画面右端の文字(40文字目、または80文字目)が消えることがあるのは、N-BASIC 1.0の既知のバグです。1.1以降にバージョンアップするか、編集したあとでその行にカーソルを戻してもう一度リターンを押すことで回避できます。
1.1にバージョンアップする場合は、ROMの交換になります。昔は、NECのビットインで買えたという情報もありますが、今、入手する方法を誰かご存知ありませんか?
これだけなら、取り立てて言うことはない。いつも通り、Javaの素晴らしさを伝導するためにメッセージを書き込んでいくだけのことだ。N-BASICがどんなプログラム言語か知らないが、Javaの素晴らしさを知れば、そんなマイナー言語を使ってなどいられるわけがない。
しかし、あるメッセージが目にとまった。
Q: プログラムが頻繁に一時停止します
文字列処理を行うプログラムを作成したのですが、プログラムが頻繁に止まります。止まっている間はキーを押しても反応しません。STOPキーも利きません。数値計算プログラムを作ったときには、こんなことは無かったのですが。
A: 文字列領域を拡大すると改善できます
N-BASICは、文字列を保存する領域を使い尽くすと、ガベージコレクションというゴミ掃除を行います。その間はプログラムが止まってしまいます。これを回避するには、この領域を拡大することができます。そもそも、初期状態で300バイトという容量が小さすぎるのですね。プログラムの最初に、CLEAR 1000のような命令を追加すると改善できると思います。1000は新しい領域のサイズです。残りメモリ容量と相談して、適当な値を指定して下さい。
ここで、ガベージコレクションという言葉に強く引っかかりを感じたわけである。厚顔無恥にも、ガベージコレクション技術を盗むような企業がマイクロソフトの他にあるわけがない、と思って調べてみると、この考えは間違いではないことが分かった。
N-BASICとは、NECのパソコンPC-8001に組み込まれたプログラム言語だが、マイクロソフトが開発したものだったのだ。
C#の他にも、ここにマイクロソフトの技術泥棒の証拠があったとは。
言うまでもなく、そんな泥棒言語を使うことは、人として正しいことではない。さっそく、その掲示板に以上の話を書き込み、彼らを正しいJavaの道に更生させようとした。
しかし、すっかりN-BASICに毒された彼らは頑迷になっていて、邪魔をするなだの、趣味の問題に口を出すななどと言い、最後には「荒らしは放置」とまで書き込んで、こちらを掲示板荒らし扱いしたではないか。
もちろん、その程度で引き下がらないのが、良き宣教師というものだ。パワー全開で、その頑迷さを打ち崩すべく、努力して文章を練って書き込み続けた。
そんなときに、あるメッセージが目に入った。
マイクロソフトがJavaからガベージコレクションを盗んだと言うが、PC-8001の発売は1978年。1990年に生まれたJavaから盗めるわけがないだろう。あんたの言ってることは支離滅裂だ。むしろ、Javaがマイクロソフトからガベージコレクションを盗んだと言った方が筋が通るぞ。
これを見て、彼らが本質的なことを見失っていることが痛いほど分かった。
時が未来に進むと誰が決めたのだ。
1978年に、1990年代の技術を盗めるということは、マイクロソフトの邪悪さがいかに人知を越えた巨大なものであるかを示している好例だ。
それなのに、いたずらに時間を戻すことはできないと信じ込み、マイクロソフトは悪くないと弁護する哀れな者達。
もちろん、私は彼らを見捨てたりはしない。よりキーボードを叩き手に力と祈りを込めて書き込みを続けた。
それから数週間後に、この掲示板は消滅していた。掲示板参加者の何人がJavaの理想を理解したかは残念ながら調べる術がない。しかし、悪魔の言説を流布する掲示板が1つ消えたことは、素晴らしい未来への確かな第1歩になるだろう。
最後に念のために付記しておきますが、これらの文章の正しさを私は何も保証できません。誰かが面白がってでっちあげただけの文章で、ただ笑って終わりにすれば良いのだろうと思います。しかし、これが真実である可能性も、絶対にあり得ないとも言い切れません。